#pragma once
#include "DDefine.h"

//////////////////////////////////////////////////////////////////////////
// Name : DDevice
// Desc : 
// Date : [3/11/2012]
//////////////////////////////////////////////////////////////////////////
class DDevice : public DSingleton <DDevice>
{
private:
// Member Data 	
	LPDIRECT3D9						m_pD3d;
	LPDIRECT3DDEVICE9				m_pDevice;
	
	D3DPRESENT_PARAMETERS			m_Param;
	HWND							m_hWnd;

private:
	friend class DSingleton <DDevice>;
	DDevice();
	virtual ~DDevice();

public:
// Member Method
	bool CreateDevice(HWND hWnd);
	void ReleaseDevice();

	LPDIRECT3DDEVICE9 GetDevice() const
	{
		return m_pDevice;
	}

};